Skip to content

Conversation

@ndr-ds
Copy link
Contributor

@ndr-ds ndr-ds commented Sep 16, 2025

Motivation

We're working on adding the Indexer/Explorer/Exporter into our deployments.

Proposal

This adds them to linera net up --kubernetes as a starting point. Next, adding to the actual GCP deployment.

Test Plan

Started a local k8s network, sent some transactions to it, and managed to see the information in the block explorer:

Screenshot 2025-09-16 at 12.18.34.png

Screenshot 2025-09-16 at 12.18.55.png

Release Plan

  • Nothing to do / These changes follow the usual release cycle.

Copy link
Contributor Author

ndr-ds commented Sep 16, 2025

@ndr-ds ndr-ds force-pushed the 09-16-add_block_explorer_to_net_up_--kubernetes branch from db6ed13 to dd746df Compare September 16, 2025 16:51
@ndr-ds ndr-ds force-pushed the 09-16-add_support_to_multiple_proxies_on_net_up_--kubernetes branch from 4b8ce28 to 305a656 Compare September 16, 2025 16:51
@ndr-ds ndr-ds requested review from Twey, afck, deuszx, eldios and ma2bd September 16, 2025 16:51
tokio::spawn(listen_for_shutdown_signals(shutdown_notifier.clone()));

let num_block_exporters = if with_block_exporter {
num_block_exporters
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could assert here (or earlier) that num_block_exporters is non-zero.

- "--port"
- "{{ .Values.indexer.port }}"
- "--database-path"
- "{{ .Values.indexer.databasePath }}"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for the future: Can we make it so that the SQLite file is replicated automatically?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could! Keep in mind that regular PVCs are zonal deployments, so only if the entire zone goes down for some reason we would lose the data. It's very unlikely. If we want extra protection, we could do regional PVCs, that replicate the data across different zones of the same region.
But yeah, I agree it's more of a follow up for the future

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To complete the question: we have sqlite db which is file-based. We should be set up some syncing/fallbacks in case the machine is wiped or lost.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Like I said, it's currently in a PVC. PVCs are over the network disks. They already don't live in the actual indexer VM. So if the machine is moved or something (like in a maintenance event), we won't lose the data.
I think we should be ok here for now, losing this data should be a very low probability thing (our ScyllaDB for example uses the same over the network disks for testnet). Of course there's more we can do in the future to add more safeguards for it like I mentioned (replicated PVC, backups, etc)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok cool. Do we have metrics for latency there?

kind = "Indexer"
tls = "ClearText"
port = {{ .Values.indexer.port }}
endpoint = "linera-indexer"
Copy link
Contributor

@deuszx deuszx Sep 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This works only in docker-compose. In real deployment this will have to be an address of an actual indexer endpoint.

Copy link
Contributor Author

@ndr-ds ndr-ds Sep 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually on kubernetes this will be the actual internal hostname of the indexer endpoint :) so this works

@ndr-ds ndr-ds force-pushed the 09-16-add_block_explorer_to_net_up_--kubernetes branch from dd746df to 54b0aa9 Compare September 16, 2025 17:50
Base automatically changed from 09-16-add_support_to_multiple_proxies_on_net_up_--kubernetes to main September 16, 2025 18:23
@ndr-ds ndr-ds force-pushed the 09-16-add_block_explorer_to_net_up_--kubernetes branch from 54b0aa9 to 6881c43 Compare September 16, 2025 19:02
@ndr-ds ndr-ds force-pushed the 09-16-add_block_explorer_to_net_up_--kubernetes branch from 6881c43 to 234fd10 Compare September 26, 2025 22:02
@ndr-ds ndr-ds added this pull request to the merge queue Sep 26, 2025
Merged via the queue into main with commit b6b59d4 Sep 26, 2025
31 checks passed
@ndr-ds ndr-ds deleted the 09-16-add_block_explorer_to_net_up_--kubernetes branch September 26, 2025 23:09
ndr-ds added a commit to ndr-ds/linera-protocol that referenced this pull request Oct 3, 2025
## Motivation

We're working on adding the Indexer/Explorer/Exporter into our
deployments.

## Proposal

This adds them to `linera net up --kubernetes` as a starting point.
Next, adding to the actual GCP deployment.

## Test Plan

Started a local k8s network, sent some transactions to it, and managed
to see the information in the block explorer:

![Screenshot 2025-09-16 at
12.18.34.png](https://app.graphite.dev/user-attachments/assets/80cd3746-4f75-4d0b-aa5d-1daa900be025.png)

![Screenshot 2025-09-16 at
12.18.55.png](https://app.graphite.dev/user-attachments/assets/b765f25d-271e-47ad-987a-7691c5b5c755.png)

## Release Plan

- Nothing to do / These changes follow the usual release cycle.
ma2bd pushed a commit that referenced this pull request Oct 4, 2025
## Motivation

We're working on adding the Indexer/Explorer/Exporter into our
deployments.

## Proposal

This adds them to `linera net up --kubernetes` as a starting point.
Next, adding to the actual GCP deployment.

## Test Plan

Started a local k8s network, sent some transactions to it, and managed
to see the information in the block explorer:

![Screenshot 2025-09-16 at
12.18.34.png](https://app.graphite.dev/user-attachments/assets/80cd3746-4f75-4d0b-aa5d-1daa900be025.png)

![Screenshot 2025-09-16 at
12.18.55.png](https://app.graphite.dev/user-attachments/assets/b765f25d-271e-47ad-987a-7691c5b5c755.png)

## Release Plan

- Nothing to do / These changes follow the usual release cycle.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants